home *** CD-ROM | disk | FTP | other *** search
/ SunSoft Catalyst CDWARE 1996 May to August / Catalyst CDWARE 1996 May to August.iso / .products / JavaWorld / javaworld / cgi-bin / jw-mini-survey.cgi < prev    next >
Text File  |  1996-02-25  |  3KB  |  108 lines

  1. #!/usr/local/bin/perl
  2. # jw-mini-survey.cgi - script to collect mini-ditkas from javaworld
  3. # and send them to HQ.
  4. #
  5. # complain to david.burnette@javaworld.com if there are problems.
  6.  
  7. $hostname="/usr/ucb/hostname";
  8. $mailprog="/usr/lib/sendmail";
  9. $date=`date`; chop($date);
  10. $recipient="surveymaster\@javaworld.com";
  11. $fromname="jw-mini-survey";
  12. $fromadd="javaworld\@javaworld.com";
  13. $subject="jw-mini-survey from unspecified sources";
  14. $href1="/javaworld/index.html";
  15. $src1="/javaworld/icons/b-thismonth.gif";
  16. $alt1="[This month's JavaWorld]";
  17.  
  18. read(STDIN, $buffer, $ENV{'CONTENT_LENGTH'});
  19.  
  20. if (@ARGV == 1) {
  21.    $subject="$ARGV[0]";
  22. #   if (defined($ENV{'HTTP_REFERER'})) {
  23. #      if ($ENV{'HTTP_REFERER'} =~ /#/) {
  24. #         $href2="$ENV{'HTTP_REFERER'}";
  25. #      }
  26. #      else {
  27. #         $href2="$ENV{'HTTP_REFERER'}#mini-ditka";
  28. #      }
  29. #   }
  30. }
  31. elsif (@ARGV >= 2) {
  32.    $subject="$ARGV[0]";
  33. #   if ($ARGV[1] =~ /^http:\/\//i) {
  34. #      $href2="$ARGV[1]";
  35. #   }
  36. #   else {
  37. #      $host=`$hostname 2> /dev/null`;
  38. #      chop($host);
  39. #      if ($ARGV[1] =~ /^\//) {
  40. #         $href2="http://$host$ARGV[1]#mini-ditka";
  41. #      }
  42. #      else {
  43. #         $href2="http://$host/$ARGV[1]#mini-ditka";
  44. #      }
  45. #      if (@ARGV >= 3) {
  46. #         $href2=$href2."#$ARGV[2]";
  47. #      }
  48. #   }
  49. }
  50.  
  51. if (defined($href2)) {
  52.  
  53.    # return browser to launch point
  54.  
  55.    print "Content-TYPE: text/html\n";
  56.    print "Location: $href2\n\n";
  57. }
  58. else {
  59.  
  60.    # send thank-you note to browser
  61.  
  62.    $HREF1="<A HREF=\"$href1\"><IMG SRC=\"$src1\" ALT=\"$alt1\"></A>";
  63.    print "Content-TYPE: text/html\n\n";
  64.    print "<HTML>\n";
  65.    print "<HEAD><TITLE>JavaWorld</TITLE></HEAD>\n";
  66.    print "<BODY>\n";
  67.    print "$HREF1\n";
  68.    print "<H3>Thank you for contributing to <EM>JavaWorld</EM>. We appreciate your patronage.</H3>\n";
  69.    print "</BODY>\n";
  70.    print "</HTML>\n";
  71. }
  72.  
  73.  
  74. # send raw data to JW HQ
  75.  
  76. open (MAIL, "|$mailprog $recipient") || die "Can't open $mailprog!\n";
  77. print MAIL "From: $fromadd ($fromname)\n";
  78. print MAIL "To: $recipient\n";
  79. print MAIL "Subject: $subject\n\n";
  80. print MAIL "BEGIN RECORD $date\n";
  81. print MAIL "recipient=$recipient\n";
  82. print MAIL "href1=$href1\n";
  83. print MAIL "src1=$src1\n";
  84. print MAIL "alt1=$alt1\n";
  85. print MAIL "href2=$href2\n";
  86. print MAIL "CONTENT_LENGTH=$ENV{'CONTENT_LENGTH'}\n";
  87. print MAIL "CONTENT_TYPE=$ENV{'CONTENT_TYPE'}\n";
  88. print MAIL "DOCUMENT_ROOT=$ENV{'DOCUMENT_ROOT'}\n";
  89. print MAIL "GATEWAY_INTERFACE=$ENV{'GATEWAY_INTERFACE'}\n";
  90. print MAIL "HTTP_REFERER=$ENV{'HTTP_REFERER'}\n";
  91. print MAIL "HTTP_USER_AGENT=$ENV{'HTTP_USER_AGENT'}\n";
  92. print MAIL "QUERY_STRING=$ENV{'QUERY_STRING'}\n";
  93. print MAIL "REMOTE_ADDR=$ENV{'REMOTE_ADDR'}\n";
  94. print MAIL "REMOTE_HOST=$ENV{'REMOTE_HOST'}\n";
  95. print MAIL "REQUEST_METHOD=$ENV{'REQUEST_METHOD'}\n";
  96. print MAIL "SCRIPT_NAME=$ENV{'SCRIPT_NAME'}\n";
  97. print MAIL "SERVER_NAME=$ENV{'SERVER_NAME'}\n";
  98. print MAIL "SERVER_PORT=$ENV{'SERVER_PORT'}\n";
  99. print MAIL "SERVER_PROTOCOL=$ENV{'SERVER_PROTOCOL'}\n";
  100. print MAIL "SERVER_SOFTWARE=$ENV{'SERVER_SOFTWARE'}\n";
  101. print MAIL "ARGV=@ARGV\n";
  102. print MAIL "STDINDATA=$buffer\n";
  103. print MAIL "END RECORD $date\n";
  104. close(MAIL);
  105.  
  106. exit(0);
  107.  
  108.